﻿using System;
using System.Runtime.Serialization;
using System.Xml.Serialization;

namespace Dynamic.Data.Model.DynamicEntities.Properties
{
    [Serializable]
    [DataContract]
    public abstract class Property
    {

        private string nameField;

        protected Property()
        {
        }

        internal abstract object GetValue();
        internal abstract void SetValue(object value);

        [DataMember]
        [XmlAttribute]
        public string Name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

    }
}
